#! python3
#coding='uft-8'
# -- 本文主要介绍 selenium webdriver 的简单使用--#


from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

#path_file='F:\\mycode\\wlxs\\wlxs_address.csv'

#region -- 方法说明
"""
使用id查找元素，结果唯一
使用name查找元素，结果可能不唯一
使用class类名查找，结果不唯一
使用tag 定位， 结果太多（div，input,a，src,)
使用link 专门定位文本链接，
使用partial link 定位，识别较长的文本链接
使用xpath定位（元素的绝对路径 /元素的属性）
使用css定位，识别速度快，入门门槛高
    .class  >> .xx 选择‘class='xx'的所有元素
    #id     >> #xx 选择 id=xx的所有元素
    *       >>选择所有元素
    element  >> 选择所有<p>元素
    element>element2  >> 选择父元素为<div>的所有<input>元素
    element +element2 >> 选择同一级中紧接在<div>元素后的所有<input>元素
    [attribute=value] >> 选择 target='blank'd 所有元素
 
使用By定位元素 find_element(By.type,param)

"""
#endregion
try:
    driver=webdriver.Edge()
    """  
    driver.get('www.baidu.com')
   
    e1=driver.find_element_by_id('kw')
    e1.clear()
    e1.send_keys('java')
    # e1=driver2.find_element_by_name('wd') 
    e2=driver.find_element_by_id('su')
    e2.click()
    # driver.find_element_by_class_name('bg s_btn').click()
    # e2=driver.find_element_by_xpath("//input[@id='su"])  #//表示当前页面某个目录下，input表示定位元素的标签名，[@id='su']表示这个元素的id属性
    time.sleep(5)
    # driver.refresh() #刷新当前页面
    driver.close() #关闭浏览器当前选项卡
    """



   # driver=webdriver.Edge() #设置要使用的浏览器
   # driver.get("www.163.com")
   # assert "网易" in driver.title #判断
   # print( 'access ok')
   # time.sleep(1)
  #  driver.set_window_size(480,800) # 设置浏览器窗口大小
  #  time.sleep(1)     #计数3秒
    #driver.minimize_window() #最小化窗口
    #driver.maximize_window()  #最大化窗口
    #time.sleep(3)
    #driver.get('www.baidu.com')
    #time.sleep(2)
   # elem_list=driver.find_elements_by_class_name('tab_nav')
   # elem_list=driver.find_elements_by_class_name('localcity')
   # ts=elem_list.find_elements_by_tag_name('ne-href')
   # ts=driver.find_elements_by_css_selector('localcity').text
    #print(len(elem_list))
   # print(ts.ne-href)
   #driver.quit() #关闭所有选项卡，退出浏览器，
    #保持截图
    #driver.get_screenshot_as_file("F:\\images\\screenshot.jpg") 
    #获取cookie
    #cookie=driver.get_cookies()
    #上传文件方式1
    # driver.find_element_by_name('file').send_keys('D:\\upload.txt')

    # 切换窗口
    search_window=driver.current_window_handle
    all_handles=driver.window_handles
    for handle in all_handles:
        if handle!=search_window:
            driver.switch_to_window(handle)
    # 切换表单
    driver.switch_to_frame('if')
    driver.switch_to_default_content() #跳回最外层

    """ 
    

    #调用js,打印视频地址，再播放
    url=driver.execute_script("return arguments[0].currentSrc;",video)
    print(url)
    driver.execute_script("return arguments[0].play()",video) 
    """


    """   driver=webdriver.Edge()
   driver.get('www.youdao.com')
   e1=driver.find_element_by_name('q')
   e1.send_keys('散乱')
   e1.submit() #相当于输入后回车，但需要浏览器的控件支持，没有按键的适用面广。
  # e2=driver.find_element_by_css_selector('button')
  # e2.click()
   driver.set_window_size(480,800)
   time.sleep(5)
   driver.quit() 
   """

    driver.get('www.126.com')
    print(' before login....')
    print(driver.title)
    print(driver.current_url)
    print('Start to run operating...')
  
    driver.find_element_by_id('lbNormal').click()
    driver.switch_to_frame('3')
    emailInput = driver.find_element_by_css_selector('[data-placeholder="邮箱帐号或手机号码"]')
    print(emailInput)
   # driver.find_element_by_id("auto-id-1569490431540").clear()
    emailInput.clear()
    emailInput.send_keys('userName')
    driver.find_element_by_css_selector("[name='password']").clear()
    driver.find_element_by_css_selector("[name='password']").send_keys('pwd')
    driver.find_element_by_id('dologin').click()
    time.sleep(5)
    print('After login...')
    title_b=driver.title
    print(title_b)
    now_url=driver.current_url
    print(now_url)

    user=driver.find_element_by_id('spnUid').text()
    print(user)
    driver.quit()
except Exception as w:
    print(w)


